package com.ruoyi.tcsp.service;

import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.tcsp.domain.bean.req.ScientificInfoReq;
import com.ruoyi.tcsp.domain.bean.resp.ScientificInfoResp;
import com.ruoyi.tcsp.domain.mysql.ScientificBaseInfo;

import java.util.List;

public interface ScientificInfoService {
    /**
     * 查询科技成果
     *
     * @param scientificId 科技成果主键
     * @return 科技成果
     */
    public ScientificInfoResp selectScientificBaseInfoByScientificId(Long scientificId);

    /**
     * 查询科技成果列表
     *
     * @param ScientificBaseInfo 科技成果
     * @return 科技成果集合
     */
    public List<ScientificBaseInfo> selectScientificBaseInfoList(ScientificBaseInfo ScientificBaseInfo);

    /**
     * 新增科技成果
     *
     * @param scientificInfoReq 科技成果
     * @return 结果
     */
    public int insertScientificBaseInfo(ScientificInfoReq scientificInfoReq, LoginUser loginUser);

    /**
     * 修改科技成果
     *
     * @param ScientificBaseInfo 科技成果
     * @return 结果
     */
    public int updateScientificBaseInfo(ScientificInfoReq ScientificBaseInfo, LoginUser loginUser);

    /**
     * 批量删除科技成果
     *
     * @param scientificIds 需要删除的科技成果主键集合
     * @return 结果
     */
    public int deleteScientificBaseInfoByScientificIds(Long[] scientificIds);

    /**
     * 删除科技成果信息
     *
     * @param scientificId 科技成果主键
     * @return 结果
     */
    public int deleteScientificBaseInfoByScientificId(Long scientificId);
}
